﻿#pragma once

// 格
#define GRID_SIZE 16                                            // 尺寸

// 游戏区域
#define GAME_BOARD_GRID_COUNT_H 20                              // 横向格数
#define GAME_BOARD_GRID_COUNT_V 22                              // 纵向格数
#define GAME_BOARD_WIDTH (GRID_SIZE * GAME_BOARD_GRID_COUNT_H)  // 宽度
#define GAME_BOARD_HEIGHT (GRID_SIZE * GAME_BOARD_GRID_COUNT_V) // 高度
#define GAME_BOARD_COLOR RGB(0, 0, 0)                           // 背景色

// 定时器
#define TIMER_ID (WM_USER + 1)                                  // id
#define TIMER_INIT 500                                          // 初始间隔值，单位毫秒
#define TIMER_GROW 50                                           // 增长间隔值，单位毫秒，难度每增加1级，间隔值减少此数

// 难度
#define DIFF_BASE 5                                             // 基数。分数每达到此数的整数倍时，难度增加
#define DIFF_MAX 10                                             // 最大值。难度达到此数后不再增加

// 胜利数
#define WIN_NUMBER (DIFF_BASE * DIFF_MAX)                       // 达到此数胜利

// 蛇
#define SNAKE_COLOR RGB(0, 255, 0)                              // 颜色

// 果子
#define APPLE_COLOR RGB(255, 0, 0)                              // 颜色

// 状态栏
#define STATUS_BAR_PART_COUNT 2                                 // 格数

// 事件
#define UM_SCORE (WM_USER + 2)                                  // 得分事件
#define UM_DIFFICULTY_UP (WM_USER + 3)                          // 难度增加事件
#define UM_GAME_OVER (WM_USER + 4)                              // 游戏结束事件

// 字符串
#define STRING_BUF_LEN 256                                      // 缓存长度
